package top.superflow.context.manage.api

import top.superflow.context.api.ContextMetadata

trait ContextManager {
  
  
  def contextExisting () : Boolean
  
  def isConsistency () : Boolean
  
  def isMigratable () : Boolean
  
  def migrate (migrateConfig : MigrateConfig) : MigrateResult
  
  def dryMigrate (migrateConfig : MigrateConfig) : MigrateResult
  
  def backup (backupConfig : BackupConfig) : String
  
  def resetContext() : String
  
  def getContextHome () : String
  
  def loadExistingMetadata() : ContextMetadata
  
  def loadCurrentMetadata () : ContextMetadata
  
  def compareMetadata () : CompareResult
  
}